package com.note.feng.leetcode.algorithms.easy.twelve;

public class ThousandTwoHundredNnetyFive {

    /**
     * 1295. 统计位数为偶数的数字
     * 给你一个整数数组 nums，请你返回其中位数为 偶数 的数字的个数。
     *
     * 示例 1：
     *
     * 输入：nums = [12,345,2,6,7896]
     * 输出：2
     * 解释：
     * 12 是 2 位数字（位数为偶数）
     * 345 是 3 位数字（位数为奇数）
     * 2 是 1 位数字（位数为奇数）
     * 6 是 1 位数字 位数为奇数）
     * 7896 是 4 位数字（位数为偶数）
     * 因此只有 12 和 7896 是位数为偶数的数字
     * 示例 2：
     *
     * 输入：nums = [555,901,482,1771]
     * 输出：1
     * 解释：
     * 只有 1771 是位数为偶数的数字。
     *
     * 提示：
     *
     * 1 <= nums.length <= 500
     * 1 <= nums[i] <= 10^5
     */

    /**
     * 解法：
     * 1.将数字转为字符串，判断其长度是否是偶数；
     * 2、将数字除以10，计算出其长度，判断是否是偶数；
     * @param nums
     * @return
     */
    public int findNumbers(int[] nums) {
        int count = 0;
        for(int num : nums){
            count += String.valueOf(num).length() % 2 == 0 ? 1 : 0;
        }
        return count;
    }

    public int findNumbers2(int[] nums) {
        int count = 0;
        for(int num : nums){
            int l = 0;
            while (num > 0){
                num = num / 10;
                l ++;
            }
            count += l % 2 == 0 ? 1 : 0;
        }
        return count;
    }
}
